#include <shell.h>
#include <screen.h>

void ls ()
{
	static struct dirent *node = 0;
	int i = 0;
	// Если буду передавать параметр то это не всегда будет выводиться:
	kprintf(".\n");
	kprintf("..\n");
	// and continue...
	while ((node = readdir_fs(GetCurrentNodeDir(), i)) != 0)
	{
		kprintf(node->name);
		fs_node_t *tmpfsnode = finddir_fs(GetCurrentNodeDir(), node->name);
		if ((tmpfsnode->flags&0x7) == FS_DIRECTORY)
			//kprintf(" (dir)\n");
			kprintf("/\n");
		else
			kprintf("\n");
		i++;
	}
	// Из-за kprintf(".\n"); kprintf("..\n"); + 2
	i += 2;
	// Конец
	if (i == 0)
		kprintf("This folder is empty.\n");
	else
		kprintf("Total: %d\n", i);
}
